1. Field of the Invention
The present invention relates to management of network and application priority in a computer system.
2. Background of the Related Art
Computers are useful for many tasks at home, at work, and on the go. Many types of applications have been developed to increase the efficiency with which a task can be completed. The computer hardware itself has been steadily advanced to run faster and more reliably, and peripheral devices are available to expand or improve the capabilities of a particular computer system.
A group of computers may be connected together through a local area network (LAN) in order to communicate with each other and share certain resources, such as printers and data storage devices. These computers may also share a connection to a global communication network, such as the Internet, through a network switch. However, the physical lines and the service of providing a connection to the Internet are typically provided by a third party entity referred to as an Internet Service Provider (ISP). An entity will enter into a service agreement with the ISP to provide up to a predetermined rate of data transfer (“bandwidth”) in exchange for monthly payment. This bandwidth is then shared among the users that have computers in the entity's LAN. Further, a service, such as YouTube may allocate only a certain level of bandwidth from the hosting site to a particular user.
While various useful applications may be run entirely within the entity's LAN, external email communications and browser activity will utilize some of the limited bandwidth available. Graphics, animation and video are increasingly available over the Internet, but require significant bandwidth. Streaming video, such as content found on YouTube.com, relies upon a high speed Internet connection in order to perform satisfactorily without periodic interruptions to buffer more data. While there is lots of entertaining video available on the Internet, there is also an expanding availability of educational videos, product training videos, and instructional videos.
Furthermore, more and more applications rely upon Internet access. Software as a Service (SaaS) is a model in which the software and related data are maintained on the servers of an Application Service Provider (ASP). The ASP is responsible for providing and maintaining the software and related data. However, the use of the software is dependent upon Internet access.